Firmware includes computer code (e.g., software) that is stored in an electronic device to control the operation of that device. Firmware is generally stored in nonvolatile memory such as read-only memory (ROM), programmable read-only memory (PROM), erasable programmable read-only memory (EPROM), electrically erasable programmable read-only memory (EEPROM) and the like. Flash memory is a type of EEPROM that can be erased and reprogrammed in block-sized amounts rather than byte by byte, thus making it typically faster to reprogram than a traditional EEPROM.
The firmware is executed when the device is started (e.g., boot process). Execution of the firmware can cause the device to be configured to control the operation of the device.